package com.cleaningcloud.cld.domain;

import com.cleaningcloud.common.core.web.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;

/**
 * packageName com.cleaningcloud.cld.domain
 *
 * @author Shaw
 * @version JDK 8
 * @className MaterialsBI
 * @date 2025-09-09
 * @description TODO
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class SaleBI extends BaseEntity {

    // ------------------------------公共参数------------------------------
    //日期值
    private String dateVal;
    //年月日
    private Integer dateYear;
    private Integer dateMonth;
    private Integer dateDay;

    // 参数值ID
    private int paramsId;
    // 参数值名称
    private String paramsName;
    // 参数值
    private BigDecimal rv;
    // 参数与实际差异
    private BigDecimal rvDiff;
    // 计划值
    private BigDecimal pv;
    // 计划与实际差异
    private BigDecimal pvDiff;

    //参数类型  1数量2金额
    private int paramType;

    //客户名称
    private String customerName;

    //类别ID
    private Long commodityTypeId;
    //类别名称
    private String commodityTypeName;
    //类别占比
    private BigDecimal commodityTypeRate;
    //商品数量
    private Long commodityNumber;
    //商品金额
    private BigDecimal commodityMoney;
    //销售成本占比
    private BigDecimal saleCostRate;
    //销售利润占比
    private BigDecimal saleProfitRate;
    //公司库存数量
    private Long stockNumber;
    //已售商品数量
    private Long saleNumber;
    //已售商品占比
    private Long saleRale;
    //可售商品数量
    private Long availableNumber;
    //可售商品占比
    private Long availableRale;
    //锁定商品数量
    private Long lockNumber;
    //锁定商品占比
    private Long lockRale;

    //清洁工具销售利润
    private BigDecimal qjgjSaleProfit;
    //清洁药剂销售利润
    private BigDecimal qjyjSaleProfit;
    //垃圾处置销售利润
    private BigDecimal ljczSaleProfit;
    //承载收纳销售利润
    private BigDecimal czsnSaleProfit;
    //机械配件销售利润
    private BigDecimal jxpjSaleProfit;
    //劳保用品销售利润
    private BigDecimal keypSaleProfit;
    //客用品销售利润
    private BigDecimal lbypSaleProfit;
    //其他销售利润
    private BigDecimal qtSaleProfit;
    //总利润
    private BigDecimal sumSaleProfit;

    //销售占比
    private BigDecimal saleTypeRate;
    //销售额
    private BigDecimal saleMoney;
    //销售利润
    private BigDecimal saleProfit;

    //总订单数
    private Integer sumNumber;
    //总订单金额
    private BigDecimal sumMoney;
    //成功数
    private Integer successNumber;
    //成功额
    private Integer successMoney;
    //未成功数
    private Integer unSuccessNumber;
    //未成功额
    private Integer unSuccessMoney;
    //交付数
    private Integer deliverNumber;
    //未交付数
    private Integer unDeliverNumber;
}